package fr.esisar.p2014.cs420.nsmwnr;

import java.sql.Connection;
import java.sql.SQLException;
import java.sql.Statement;

import oracle.jdbc.pool.OracleDataSource;


public class JDBC {

	private static JDBC instance = null;
	private OracleDataSource ods;
	private Connection conn;
	
	/*
	 * Constructeur : ouvre une connexion à la base Oracle
	 * 
	 * 	EN LOCAL !!
	 */
	private JDBC() throws SQLException{
		ods = new OracleDataSource();
		ods.setUser("userir");
		ods.setPassword("userir");
		ods.setURL("jdbc:oracle:thin:@localhost:1521:XE");

		conn = ods.getConnection();
	}
	
	/*
	 * Retourne l'instance en cours d'exécution (singleton).
	 */
	public static JDBC getInstance() throws SQLException{
		if(instance == null){
			instance = new JDBC();
		}
		return instance;
	}
	
	/**
	 * Ferme la connexion
	 * @throws SQLException 
	 */
	public void quitter() throws SQLException{
		conn.close();
	}
	
	/*
	 * Retourne un objet permettant d'effectuer des requêtes
	 * vers la base.
	 */
	public Statement getStatement() throws SQLException{
		return conn.createStatement();
	}
}
